using UniversalBlazor.ElementUI;
using UniversalBlazor.Sample.Client.Pages;
using UniversalBlazor.Sample.Components;
using UniversalBlazor;

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
builder.Services
    .AddElement()
    .AddRazorComponents()
    .AddInteractiveServerComponents()
    .AddInteractiveWebAssemblyComponents();
var app = builder.Build();
// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
    app.UseWebAssemblyDebugging();
}
else
{
    app.UseExceptionHandler("/Error", createScopeForErrors: true);
    // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
    app.UseHsts();
}
app.UseBlazorComponent();
app.UseHttpsRedirection();

app.UseStaticFiles();
app.UseAntiforgery();

app.MapRazorComponents<App>()
    .AddInteractiveWebAssemblyRenderMode()
    .AddInteractiveServerRenderMode()
    .AddAdditionalAssemblies(typeof(Counter).Assembly, typeof(ElementBlazorExtension).Assembly, typeof(UniversalBlazor.ComponentRouter).Assembly);

app.Run();
